// pages/index/index.js
import WxValidate from '../../WxValidate.js';
var bmap = require('../../bmap-wx.min.js');
const app = getApp()
const api = app.globalData.api
// var access = '14_h-l1dPOzC5OxGtJcThefBy_LLPdq2QPEdXf218HC4uhWix1nUcQgcroZLiVyC269unb9ZJHP5tNCbCvphj-1aw2bTaYt6A1yR3Rpie-k4rCz7bin53--sK-qob32P8P67dGCDPD1ymiZuaiQHSKdABABME'
// var manage_open = ""
// wx.setStorageSync("code","")
// console.log(wx.getStorageSync("code"))
Page({
  /**
   * 页面的初始数据
   */ 
  data: {
    cat_arry: ['请选择车辆情况', '无车', '一车一人', '一车两人（物资/卸车）', '一车两人（盖布/高栏）', '其它'],
    city_arr:["请选择所属城市","长沙","常德"],
    city_num :0,
    index: 0,
    city: 1, //当前所在城市
    map_address: "", //当前所在城市导航地址
    cs_array: ['请选择进厂区人员所属', '物流司机运货', '供应商送货/提货', '零星工程', '汽车客户提车', '废旧资产处置'],
    ren_array: ['请选择进厂区人员所属', '劳务工', '员工家属',  '设备维修', '供应商', '看样取样/收购商'],
    index1: 0,
    date: '选择日期',
    time: '选择时间',
    date1: '选择日期',
    time1: '选择时间',
    openid: wx.getStorageSync("code"),
    status: true,
    btnstatu: "",
    cartpai: true,
    userName: "", //姓名
    form: {
      idCart: "", //身份证
      lfdw: "", //来访单位
      lfsy: "", //来访事由
      phone: "", //电话
      rcCat: "", //入场车辆情况
      jcss: "", //进厂区人员所属
      fwStartDate: "", // 访问开始时间  riqi
      fwStartTime: "", //访问开始时间 shijian
      fwEndDate: "", // 访问结束时间  riqi
      fwEndTime: "" //访问结束时间 shijain
    },
    btn_status: false

  },
  //验证函数
  initValidate() {
    const rules = {
      idCart: {
        required: true,
        idcard: true
      },
      lfdw: {
        required: true,
      },
      lfsy: {
        required: true,
      },
      phone: {
        required: true,
        tel: true
      }
    }
    const messages = {
      idCart: {
        required: '请填写身份证号码',
        idcard: "请输入正确的身份证"
      },
      lfdw: {
        required: "请填写来访单位"
      },
      lfsy: {
        required: "请填写来访事由"
      },
      phone: {
        required: '请填写手机号',
        tel: '请填写正确的手机号'
      }
    }
    this.WxValidate = new WxValidate(rules, messages)
  },

  //弹窗表单字段 
  showModal(error) {
    // wx.showModal({
    //   content: error.msg,
    //   showCancel: false,
    // })

    wx.showToast({
      title: error.msg,
      icon: 'none',
      duration: 1000
    })
  },
  bindgetuserinfo: function() {
    app.getinfo()
  },
  //调用验证函数
  formSubmit: function(e) {
    var that = this
    if (wx.getStorageSync('status') != "true") {
      return false;
    }
    var params = e.detail.value

    if (e.detail.value.city == "请选择所属城市") {
      this.showModal({
        msg: '请选择所属城市'
      })
      return false
    }
    // console.log(e.detail.value.fwEndTime);
    if (e.detail.value.userName == "") {
      this.showModal({
        msg: '请输入姓名'
      })
      return false
    }
    //校验表单
    if (!this.WxValidate.checkForm(params)) {
      const error = this.WxValidate.errorList[0]
      this.showModal(error)
      return false
    }
    if (e.detail.value.rcCat == "请选择车辆情况") {
      this.showModal({
        msg: '请选择车辆情况'
      })
      return false
    }
    if (e.detail.value.jcss == "请选择进厂区人员所属") {
      this.showModal({
        msg: '请选择进厂区人员所属'
      })
      // this.showToast({
      //   title: error.msg,
      //   icon: 'none',
      //   duration: 1000
      // })
      return false
    }

    if (e.detail.value.fwStartDate == "选择日期") {
      this.showModal({
        msg: '请选择访问开始日期'
      })
      return false
    }

    if (e.detail.value.fwStartTime == "选择时间") {
      this.showModal({
        msg: '请选择访问开始时间'
      })
      return false
    }

    if (e.detail.value.fwEndTime == "选择时间") {
      this.showModal({
        msg: '请选择访问结束时间'
      })
      return false
    }
    if (e.detail.value.fwEndDate == "选择日期") {
      this.showModal({
        msg: '请选择访问结束日期'
      })
      return false
    }



    if (this.data.status === false && e.detail.value.userName1 == "") {
      this.showModal({
        msg: '请输入第二人的姓名'
      })
      return false
    }
    if (this.data.status === false && e.detail.value.idCart1 == "") {
      this.showModal({
        msg: '请输入第二人的身份证'
      })
      return false
    }
    if (this.data.cartpai === false && e.detail.value.cartNum == "") {
      this.showModal({
        msg: '请输入车牌号'
      })
      return false
    }
    wx.request({
      url: api + 'getMangeTypeName',
      method: "get",
      data: {
        typename: params.jcss
      },
      success: res => {
        // wx.setStorageSync("token", res.data.data)
        // console.log(res.data.open_id);
        // manage_open = res.data.open_id
      },
      fail: function(err) {
        // fail
        console.log(err);
      }
    })

    // 普通用户
    wx.request({
      url: api + 'saveuser',
      method: "post",
      data: {
        op_id: wx.getStorageSync('code'),
        username: params.userName
      },
      success: res => {
        // wx.setStorageSync("token", res.data.data)
        // console.log(res);
      },
      fail: function(err) {
        // fail
        console.log(err);
      }
    })


    console.log(wx.getStorageSync("code"));
    // return false;
    if (wx.getStorageSync('code') == "") {
      this.showModal({
        msg: '提交失败请重新提交',
        icon: "none"
      })
      return false
    }

    that.setData({
      btn_status: true
    })
    wx.showLoading({
      title: '提交中...',
    })
    // 提交
    wx.request({
      url: api + "addapply", //  addapply  getopenid
      method: "POST",
      header: {
        "content-type": "application/json"
      },
      data: {
        apply_openid: wx.getStorageSync("code"), // apply_openid   getopenid
        car_num: params.cartNum,
        end_time: params.fwEndDate + " " + params.fwEndTime,
        start_time: params.fwStartDate + " " + params.fwStartTime,
        idcard: params.idCart,
        idcardone: params.idCart1,
        guishu: params.jcss,
        unit_dan: params.lfdw,
        why_comen: params.lfsy,
        phone: params.phone,
        cared: params.rcCat,
        gangwei: "北门岗",
        username: params.userName,
        usernameone: params.userName1
      },
      success: res => {
        wx.hideLoading();

        if (res.data.status == 10001) {
          this.showModal({
            msg: '此类型无管理员不能提交',
            icon: "none"
          })
        } else if (res.data.status == 0) {
          this.showModal({
            msg: '服务器异常'
          })
        } else {
          this.showModal({
            msg: '提交成功'
          })
        }
        this.setData({
          btnstatu: "true",
          btn_status: false,
          userName: ""
        })
        // console.log('form发生了submit事件，携带的数据为：', params)    
        console.log(res);

      },
      fail: err => {
        wx.hideLoading();
        this.showModal({
          msg: '网络错误'
        })
        this.setData({
          btn_status: false
        })
        // fail
        console.log(err);
      }
    });


    // // 模版消息
    // console.log(manage_open);
    // console.log(e)
    // var fId = e.detail.formId;
    // var fObj = e.detail.value;
    // var l = 'https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=' + access;
    // var d = {
    //   touser: manage_open,
    //   template_id: 'DJEUyZpZ6cEdS3DZysiQpf92o7jkxrUFFZQXEGTDkM0',//这个是1、申请的模板消息id，
    //   page: '/pages/index/index',
    //   form_id: fId,
    //   data: {
    //     //测试完发现竟然value或者data都能成功收到模板消息发送成功通知，是bug还是故意？？【鄙视、鄙视、鄙视...】 下面的keyword*是你1、设置的模板消息的关键词变量
    //     "keyword1": {
    //       "value": "2016年8月8日",
    //       "color": "#4a4a4a"
    //     },
    //     "keyword2": {
    //       "value": "梨子",
    //       "color": "#9b9b9b"
    //     },
    //     "keyword3": {
    //       "value": "30元",
    //       "color": "#9b9b9b"
    //     },
    //     "keyword4": {
    //       "value": "123456789",
    //       "color": "#9b9b9b"
    //     },
    //     "keyword5": {
    //       "value": "200元",
    //       "color": "red"
    //     },
    //     "keyword6": {
    //       "value": "已受理",
    //       "color": "red"
    //     },
    //     "keyword7": {
    //       "value": "进口金枕头榴莲（S号）1个54.9元",
    //       "color": "red"
    //     }
    //   },
    //   color: '#ccc',
    //   emphasis_keyword: 'keyword1.DATA'
    // }
    // wx.request({
    //   url: l,
    //   data: d,
    //   method: 'POST',
    //   success: function (res) {
    //     console.log("push msg");
    //     console.log(res);
    //   },
    //   fail: function (err) {
    //     // fail
    //     console.log("push err")
    //     console.log(err);
    //   }
    // });

  },
  // 时间选择器
  bindDateChange: function(e) {
    console.log(e);
    this.setData({
      date: e.detail.value
    })
  },
  // 日期选择器
  bindTimeChange: function(e) {
    this.setData({
      time: e.detail.value,
    })
  },
  // 时间选择器1
  bindDateChange1: function(e) {
    console.log(e);
    this.setData({
      date1: e.detail.value
    })
  },
  // 日期选择器1
  bindTimeChange1: function(e) {
    this.setData({
      time1: e.detail.value,
    })
  },
  // 车辆选择
  cat: function(e) {
    // console.log(e.detail.value.rcCat);
    console.log('picker发送选择改变，携带值为', e)
    if (e.detail.value == 3 || e.detail.value == 4) {
      this.setData({
        index: e.detail.value,
        status: false
      })
    } else {
      this.setData({
        index: e.detail.value,
        status: true
      })
    }

    // 选择无车牌时 隐藏车牌
    if (e.detail.value == 1 || e.detail.value == 0 || e.detail.value == 5) {
      this.setData({
        index: e.detail.value,
        cartpai: true,
      })
    } else {
      this.setData({
        index: e.detail.value,
        cartpai: false,
      })
    }
    this.setData({
      index: e.detail.value,
    })
  },
  // 人员所属厂区
  ren: function(e) {
    console.log(e);
    console.log('picker发送选择改变，携带值为', e.detail.value)
    this.setData({
      index1: e.detail.value
    })
  },
  // 所属城市
  city:function(e){
    console.log(e);
    console.log('picker发送选择改变，携带值为', e.detail.value)
    this.setData({
      city_num: e.detail.value
    })
    if (e.detail.value == 1){
      this.setData({
        map_address: "晟通长沙望城物流园",
        city: 1
      })
      wx.setStorageSync("city", "长沙")
    } else {
      this.setData({
        map_address: "湖南省常德市桃源县",
        city: 2
      })
      wx.setStorageSync("city", "常德")
    }
  },


  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
    this.initValidate();
    rules: {}
    messages: {}
    var that = this;
    // 新建百度地图对象 
    // var BMap = new bmap.BMapWX({
    //   ak: 'vF2W043Rdy2IlqFOQpSxayVvCd0EvYGp'
    // });
    // var fail = function(data) {
    //   console.log(data)
    // };
    // var success = function(data) {
    //   var city = data.originalData.result.addressComponent.city
    //   // var city = "常德"
      
    //   if (city.includes("长沙")) {
    //     that.setData({
    //       map_address: "晟通长沙望城物流园",
    //       city: 1
    //     })
    //     wx.setStorageSync("city", "长沙")
    //   } else {
    //     that.setData({
    //       map_address: "湖南省常德市桃源县",
    //       city: 2
    //     })
    //     wx.setStorageSync("city", "常德")
    //   }
    //   console.log(data.originalData.result.addressComponent.city)

    // }
    // 发起regeocoding检索请求 
    // BMap.regeocoding({
    //   fail: fail,
    //   success: success,
    //   iconPath: '../../img/marker_red.png',
    //   iconTapPath: '../../img/marker_red.png'
    // });

    // 入场人员车辆
    // wx.request({
    //   url: api + "getCar",
    //   method: "POST",
    //   header: {
    //     "content-type": "json"
    //   },
    //   data: {
    //     id: "1"
    //   },
    //   success: res => {
    //     let length = res.data.data.length;
    //     for (var i = 0; i < length; i++) {
    //       this.data.cat_arry.push(res.data.data[i])
    //     }
    //     this.setData({
    //       cat_arry: this.data.cat_arry
    //     })
    //     // console.log(res);

    //   },
    //   fail: function(err) {
    //     // fail
    //     console.log(err);
    //   }
    // });

    // 进厂区人员所属
    // wx.request({
    //   url: api + "getTypeName",
    //   method: "POST",
    //   header: {
    //     "content-type": "json"
    //   },
    //   data: {
    //     id: "1"
    //   },
    //   success: res => {

    //     let length = res.data.data.length;
    //     for (var i = 0; i < length; i++) {
    //       this.data.ren_array.push(res.data.data[i])
    //     }
    //     this.setData({
    //       ren_array: this.data.ren_array
    //     })
    //     // console.log(this.data.ren_array);

    //   },
    //   fail: function(err) {
    //     // fail
    //     console.log(err);
    //   }
    // })

    //  wx.request({
    //   url: 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wx849e32c250e6d3af&secret=324d3d399d08dda18d82cc9a8b0aecc3',
    //   success: function (res) {
    //     console.log(res.data.access_token);
    //     access = res.data.access_token
    //   }
    // })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function() {

  },
  onLaunch: function() {

  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function() {

  }
})